package cn.agiledata.bank.common.service;

import java.util.Map;

import cn.agiledata.bank.common.dao.ActionTypeTemplate;
import cn.agiledata.bank.common.util.DateUtil;
import cn.agiledata.bank.common.util.WeatherUtil;
import cn.agiledata.bank.hibernateBean.ScoresHis;
import cn.agiledata.bank.hibernateBean.SubAccount;
import cn.agiledata.bank.hibernateBean.Transaction;
import com.vnv.infrastructure.logic.IPBAppFactory;

/**
 * 收到货物确认提醒邮件格式
 * @author 马贤波
 * 2007-1-31
 * */
public class ReceiveAcceptNotifyMail extends NotifyMail {
	/**
	 * 收到货物确认提醒邮件格式
	 */
	protected SubAccount setMailContext(Map vnvMap, Transaction tran,ScoresHis score) {
		SubAccount emailTo = tran.getDebit(),
				   anotherOne = tran.getCredit();
		 ActionTypeTemplate at = (ActionTypeTemplate) IPBAppFactory.getObj("actionTypeTemplate");
		/** 交易对方：供货方 */
		vnvMap.put("account", WeatherUtil.getNameOrEmailOrMobileByAccount(anotherOne.getAccount()));
		/** 交易号 */
		vnvMap.put("tranId", tran.getTransId());
		/** 交易发生时间 */
		vnvMap.put("tranTime", DateUtil.date2String(tran.getBeginDate()));
		/** 交易截止时间 */
		vnvMap.put("tranEnd", DateUtil
				.date2String(NotifyUtil.getPermitedEndDate(
						tran.getUpdateTime(), tran.getTransStatus())));
		String status = at.getTransStatusById(tran.getTransStatus()).getListName();
		/** 交易状态* */
		vnvMap.put("status", status);
		/** 商品信息 */
		vnvMap.put("commodity", tran.getCommodityInfo());
		/** 交易金额* */
		vnvMap.put("amount", tran.getAmount());
		vnvMap.put("fee", tran.getDebitFee().toString());
		double amount = tran.getAmount().doubleValue()+tran.getDebitFee().doubleValue();
		vnvMap.put("trueFee", amount+"");
		String titlemessage = "您有一个交易即将超过支付时限，请立即完成支付，逾期本交易将自动关闭。 <br/>"+
"如果您由于网银问题无法完成付款，请到你的开户行开通您的网银业务。";
		vnvMap.put("titlemessage", titlemessage);
		return emailTo;
	}
}
